#ifndef __MEM_STACK_H__
#define __MEM_STACK_H__

#include "types.h"

typedef struct mem_stack_ks
{
    object_kt o;

    word_kt bottom;
    word_kt top;


    word_kt* pCtrlBlk;
    word_kt  pMemBlk;

    word_kt align;

}   mem_stack_kt;


void    k_mem_stack_init(mem_stack_kt* pStk, char* bottom, char* top);
void*   k_mem_stack_malloc(mem_stack_kt* pStk, word_kt size);
bool_kt k_mem_stack_free(mem_stack_kt* pStk, void* addr);

#endif
